﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using System.Data;
using System.Configuration;

namespace ReclutamientoCosea
{
    /// <summary>
    /// Interaction logic for wImportaEmpresa.xaml
    /// </summary>
    public partial class wImportaEmpresa : Window
    {
        private DataSet dse = new DataSet ();
        private static AppSettingsReader settings = new AppSettingsReader();
        public event CerroVentana SeCerroVentana;

        public wImportaEmpresa()
        {
            InitializeComponent();
        }

        private void btnBuscar_Click(object sender, RoutedEventArgs e)
        {
            Mouse.OverrideCursor = Cursors.Wait;
            Conectividad db = Conectividad.Create();
            string strSQL = "select * from cliente where codigo = '{0}'";            
            try
            {
                db.conexion((string)settings.GetValue("bdMySql", typeof(string)),
                    (string)settings.GetValue("UserMySql", typeof(string)),
                    (string)settings.GetValue("PassMySql", typeof(string)),
                    (string)settings.GetValue("SrvMySql", typeof(string)));

                strSQL = string.Format(strSQL, txtCliente.Text);
                dse = db.fnSelect(strSQL, "empresa");

                if (dse.Tables["empresa"].Rows.Count > 0)
                {
                    lblCodigo.Content = dse.Tables["empresa"].Rows[0]["CODIGO"].ToString();
                    lblCliente.Content = dse.Tables["empresa"].Rows[0]["RAZON_SOCIAL"].ToString();
                }
                else
                    MessageBox.Show("Cliente no encontrado en la intranet !", "Reclutamiento Cosea",
                        MessageBoxButton.OK, MessageBoxImage.Error);
                
            }
            catch (Exception ex)
            {
                Mouse.OverrideCursor = null;
                wExcepcionesSistema wError = new wExcepcionesSistema();
                wError.txtExcepcion.Text = ex.Message;
                wError.ShowDialog();
            }
            finally
            {
                db.desconectar();
                Mouse.OverrideCursor = null;
            }

        }

        private void btnImportar_Click(object sender, RoutedEventArgs e)
        {
            DataSet ds = new DataSet();
            bdSQLServer bd = new bdSQLServer((string)settings.GetValue("cadenaconexion", typeof(string)));

            try
            {
                bd.bdConecta();

                int valor = 1;
                Empresa empresa;

                Mouse.OverrideCursor = Cursors.Wait;
                foreach (DataRow dr in dse.Tables[0].Rows)
                {
                    empresa = new Empresa();
                    empresa.razon_social = dr["RAZON_SOCIAL"].ToString();
                    empresa.giro = dr["TIPO_INDUSTRIA"].ToString();
                    empresa.rfc = dr["RFC"].ToString();
                    empresa.domicilio = dr["DIRECCION"].ToString();
                    empresa.colonia = dr["COLONIA"].ToString();
                    empresa.telefono1 = dr["TELEFONOS"].ToString();
                    if (empresa.telefono1.Length > 25)
                        empresa.telefono1 = empresa.telefono1.Substring(1, 25);
                    empresa.telefono2 = "";
                    empresa.municipio = "";
                    empresa.estado = "";
                    empresa.contacto = dr["NOMBRE_COMERCIAL"].ToString();
                    empresa.mail = dr["WEB"].ToString();
                    empresa.idintranet = dr["ID_CLIENTE"].ToString();
                    empresa.comentarios = dr["CODIGO"].ToString();



                    string sql1 = "exec SPInsEmpresa '{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}'";
                    sql1 = string.Format(sql1, empresa.razon_social, empresa.giro, empresa.rfc, empresa.domicilio,
                        empresa.colonia, empresa.telefono1, empresa.telefono2, empresa.municipio,
                        empresa.estado, empresa.contacto, empresa.mail, empresa.idintranet, empresa.comentarios);
                    bd.bdEjecuta(sql1);                    
                    valor++;
                }

                Mouse.OverrideCursor = null;
                MessageBox.Show("Importación finalizada","Reclutamiento Cosea",
                    MessageBoxButton.OK, MessageBoxImage.Information );
                SeCerroVentana(true);
                this.Close();

            }
            catch (Exception ex)
            {
                Mouse.OverrideCursor = null;
                wExcepcionesSistema wError = new wExcepcionesSistema();
                wError.txtExcepcion.Text = ex.Message;
                wError.ShowDialog();
            }
            finally
            {
                bd.bdCierra();
            }
        }

        private void btnCancelar_Click(object sender, RoutedEventArgs e)
        {
            SeCerroVentana(false);
            this.Close();
        }

        private void txtCliente_PreviewKeyUp(object sender, KeyEventArgs e)
        {
            if (e.Key == Key.Enter)
            {
                e.Handled = true;
                btnBuscar_Click(null, null);
            }
        }
    }
}
